package reader;

import java.io.FileReader;

/**
 * FileReader类:
 *  构造方法:
 *      public FileReader(String fileName) throws FileNotFoundException:利用字符输入流关联一个文本文件
 *  成员方法:
 *      public int read() throws IOException:从文件中读取单个字节
 *      public void close() throws IOException:关流释放资源
 */
public class FileReaderDemo01 {
    public static void main(String[] args)throws Exception {
        //1.关联文件
        FileReader fr = new FileReader("day23-IO-02/5.txt");

/*        int ch = fr.read();//按照平台默认码表(UTF-8)读取文件,由于使用UTF-8码表
                           //那么将三个字节(E4 BD A0)转换成一个中文=>‘你’
                           //由于在java程序中操作字符默认使用的是Unicode编码(其实就是UTF-16)
                           //会把'你'转化为UTF-16(左右字符采用两个字节)=>4F 60(十进制的20320)
                           // EA BD A0===UTF-8码表===> '你' ===UTF-16码表(Java程序默认以UTF-16形式操作字符)===> 4F60(十进制的20320)
        //System.out.println(ch);//20320
        System.out.println((char) ch);//将ch中存储的字节(20320)再利用UTF-16码表转换成字符=>'你'

        int ch02 = fr.read();
        System.out.println((char) ch02);

        int ch03 = fr.read();
        System.out.println(ch03);//-1*/

        int ch;
        while ((ch = fr.read()) != -1) {
            System.out.println((char) ch);
        }

        fr.close();
    }
}
